The present invention relates to generating image data, wherein objects are defined in three dimensional space.
Several procedures are known for rendering images containing elements defined as three dimensional data. A known approach to generating images of photo-realistic quality is to consider reflections between all elements simultaneously. The light emission of any given element is considered as being dependent upon the sum of contributions from all other elements and a set of equations is defined that represents these interactions. The light emission values for all the elements are then determined simultaneously by solving a system of equations.
This procedure is known as radiosity simulation. The system of equations is usually extremely large, and several refinements to radiosity simulation have been established in order to make implementation of this method practical for scenes containing large numbers of elements.
A known advantage of radiosity is that once the system of equations has been solved, and light emission values determined, the light emission of elements may be considered as view-independent, resulting in a separate radiosity rendering process which is capable of rendering a view from any position. The high efficiency of radiosity rendering makes radiosity particularly suitable for demanding applications, such as generating long sequences of image data frames for film or video, or generating image data in real time.
A major refinement to radiosity simulation is the identification of clusters. Clusters are groups of objects that may be considered as being suitable for interaction as a single element with respect to other elements within a scene. For example, a chair that is distant from a wall may be considered as a single cluster, although it comprises many component objects. The distant wall may consider the chair as a single element, as far as light interactions are concerned, because local characteristics of the chair will become blurred with respect to the wall. Thus, it is known to analyse a scene in order to identify clusters based upon proximity. The efficiency of radiosity simulation is known to be related to the degree to which clusters may be identified.
It is an object of the present invention to provide an improved method for identifying clusters within radiosity simulation.
According to a first aspect of the present invention, there is provided a method of constructing a multi-resolution representation of a radiosity equation for a scene, wherein said scene comprises object elements; comprising the steps of: identifying specialised cluster elements by associating object elements having a characterising relationship; and linking and/or meshing elements in response to an estimate of error of light transmission between elements, wherein said linking includes calculating a form factor; and when linking a specialised cluster, said form factor is calculated with reference to said characterising relationship.
In a preferred embodiment, generalised cluster elements are identified by associating object elements in close proximity to each other; and when linking a cluster, a procedure for calculating said form factor is selected in response to said cluster type.
Preferably, the characterising relationship relates to light reflectance. Alternatively, the characterising relationship may be that of near co-planarity.
According to a second aspect of the present invention, there is provided a method of constructing a multi-resolution representation of a radiosity equation for a scene, wherein said scene comprises object elements; comprising the steps of: identifying specialised cluster elements by associating object elements having a characterising relationship; identifying general cluster elements by associating object elements according to proximity; and linking and/or meshing elements in response to an estimate of error of light transmission between elements; wherein said linking steps include calculating a form factor; and when linking a cluster, selecting a method of form factor calculation in response to cluster type.